2025.6.24 変数が存在することの確認
ビルトイン関数 globals() はグローバルスコープが保持するオブジェクトの一覧が格納された辞書を返す。
code:global1.py
a = 1
print(globals())
表示してみる。
code:result1.py
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': 1, 'd': {...}}
この辞書に対して in 演算子を用いることで、変数の有無を確認することができる。 code:p1.py
a = 1
print('a' in globals())
ビルトイン関数 locals() はローカルスコープが保持するオブジェクトの一覧を返す。
code:p2.py
def hoge():
a = 1
if 'a' in locals():
print('ローカル変数aは存在します')
else:
print('存在しません')
hoge()